package com.koron.housing.staff.bean.vo;

import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.format.DateTimeFormat;
import com.koron.housing.excel.HousingStaffConvertor;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.util.Date;

/**
 * @author jzp
 * @since 2022/3/10
 */
@ExcelIgnoreUnannotated
@Data
@ApiModel(value = "租赁统计信息", description = "HousingStaffStatistics")
public class HousingStaffStatistics {

    /**
     * 物业来源，housing_property_source
     */
    @ExcelProperty(value = "物业来源",index = 0, converter = HousingStaffConvertor.class)
    @ApiModelProperty("物业来源，housing_property_source")
    private String propertySource;

    @ExcelProperty(value = "使用类型",index = 1, converter = HousingStaffConvertor.class)
    @ApiModelProperty("使用类型，housing_a_usage_type")
    private String usageType;

    /**
     * 地址
     */
    @ExcelProperty(value = "地址",index = 2)
    @ApiModelProperty("地址")
    private String address;

    /**
     * 经度
     */
    @ApiModelProperty("经度")
    private String longitude;

    /**
     * 纬度
     */
    @ApiModelProperty("纬度")
    private String latitude;

    @ExcelProperty(value = "房号", index = 3)
    @ApiModelProperty("房号")
    private String roomNum;

    @ExcelProperty(value = "户型", index = 4, converter = HousingStaffConvertor.class)
    @ApiModelProperty("意向户型，housing_layout")
    private String layout;

    /**
     * 小区
     */
    @ApiModelProperty("小区")
    private String village;

    /**
     * 合同id
     */
    @ApiModelProperty("合同id")
    private String contractId;

    /**
     * 合同编号
     */
    @ApiModelProperty("合同编号")
    private String contractCode;

    /**
     * 房屋类型，housing_type
     */
    @ApiModelProperty("房屋类型，housing_type")
    private String type;

    /**
     * 面积 (㎡)
     */
    @ExcelProperty(value = "面积 (㎡)", index = 5)
    @ApiModelProperty("面积 (㎡)")
    private Double area;

    /**
     * 租户姓名
     */
    @ExcelProperty(value = "当前租户", index = 6)
    @ApiModelProperty("租户姓名")
    private String name;

    @ExcelProperty(value = "房屋状态", index = 7, converter = HousingStaffConvertor.class)
    @ApiModelProperty("状态，housing_status")
    private String status;

    @DateTimeFormat("yyyy-MM-dd HH:mm")
    @ExcelProperty(value = "入住日期", index = 8)
    @ApiModelProperty("入住日期")
    private Date intoDate;

    @DateTimeFormat("yyyy-MM-dd HH:mm")
    @ExcelProperty(value = "退租日期", index = 9)
    @ApiModelProperty("退租日期")
    private Date outDate;

    @DateTimeFormat("yyyy-MM-dd")
    @ExcelProperty(value = "框架合同开始日期", index = 10)
    @ApiModelProperty("框架合同开始日期")
    private Date frameStartTime;

    @DateTimeFormat("yyyy-MM-dd")
    @ExcelProperty(value = "框架合同结束日期", index = 11)
    @ApiModelProperty("框架合同结束日期")
    private Date frameEndTime;

    @DateTimeFormat("yyyy-MM-dd")
    @ExcelProperty(value = "租赁合同开始日期", index = 12)
    @ApiModelProperty("租赁合同开始日期")
    private Date leaseStartTime;

    @DateTimeFormat("yyyy-MM-dd")
    @ExcelProperty(value = "租赁合同结束日期", index = 13)
    @ApiModelProperty("租赁合同结束日期")
    private Date leaseEndTime;

    /**
     * 标准租金 (元/月)
     */
    @ExcelProperty(value = "租金（元）", index = 14)
    @ApiModelProperty("标准租金 (元/月)")
    private Double rent;

    /**
     * 朝向，housing_orientation
     */
    @ApiModelProperty("朝向，housing_orientation")
    private String orientation;

    /**
     * 所在楼层
     */
    @ApiModelProperty("所在楼层")
    private Integer floor;

    /**
     * 电梯，0无1有
     */
    @ApiModelProperty("电梯，0无1有")
    private Integer hasLift;

    /**
     * 车位，0无1有
     */
    @ApiModelProperty("车位，0无1有")
    private Integer hasPark;

    /**
     * 水，housing_water
     */
    @ApiModelProperty("水，housing_water")
    private String water;

    /**
     * 电，housing_electric
     */
    @ApiModelProperty("电，housing_electric")
    private String electric;

    /**
     * 燃气，0无1有
     */
    @ApiModelProperty("燃气，0无1有")
    private Integer gas;

    /**
     * 物业管理费 (元/月)
     */
    @ApiModelProperty("物业管理费 (元/月)")
    private Double fee;


    @ApiModelProperty("创建时间")
    private Date createTime;
}
